Classification system, classification method, and program

ABSTRACT

Even when data that can belong to a new class that is not in an existing class is input, this data can be easily classified appropriately. Classification system includes input reception part, classification part, calculation part, determination part, and presentation part. Input reception part receives an input of target data. Classification part classifies the target data into any one of a plurality of classes. Calculation part calculates a feature amount of the target data. Determination part determines a possibility that the target data is classified into the new class based on a classification result in classification part and the feature amount of the target data calculated by calculation part. When determination part determines that there is a possibility that the target data is classified into the new class, presentation part presents a determination result of determination part.

TECHNICAL FIELD

The present disclosure generally relates to a classification system, aclassification method, and a program. More specifically, the presentdisclosure relates to a classification system, a classification method,and a program for classifying input data.

BACKGROUND ART

PTL 1 discloses a classification method for converting an input patternto be classified into an output pattern that is a classification resultusing a neural network. In this method, the output pattern of the neuralnetwork for the input pattern is compared with a correct output patternoutput later for the input pattern, and comparison results aresequentially accumulated as an execution history. Then, an accumulatedresult is monitored, and an anomaly of the result is detected. Inaddition, for example, PTL 2 discloses a classification method.

CITATIONS LIST Patent Literatures

PTL 1: Unexamined Japanese Patent Publication No. H05-35707

PTL 2: US 2017/0,039,469 A

SUMMARY OF THE INVENTION

In the classification method described in PTL 1, there is a problem thattarget data cannot be appropriately classified when the target data thatcan belong to a new class that is not in an existing output pattern(class) is input.

The present disclosure has been made in view of the above points, and anobject of the present disclosure is to provide a classification system,a classification method, and a program that facilitate appropriateclassification of target data even when the target data that can belongto a new class that is not in an existing class is input.

A classification system according to one aspect of the presentdisclosure includes an input reception part, a classification part, acalculation part, and a determination part. The input reception partreceives an input of target data. The classification part classifies thetarget data into any one of a plurality of classes. The calculation partcalculates a feature amount of the target data. The determination partdetermines whether it is possible that the target data is classifiedinto a new class different from the plurality of classes based on aclassification result in the classification part and the feature amountof the target data calculated by the calculation part.

A classification method according to one aspect of the presentdisclosure includes an input reception step, a classification step, acalculation step, and a determination step. The input reception step isa step of receiving an input of target data. The classification step isa step of classifying the target data into any one of a plurality ofclasses. The calculation step is a step of calculating a feature amountof the target data. The determination step is a step of determiningwhether it is possible that the target data is classified into a newclass different from the plurality of classes based on a classificationresult in the classification step and the feature amount of the targetdata calculated in the calculation step.

A program according to one aspect of the present disclosure causes oneor more processors to execute the above-described classification method.

The present disclosure has an advantage that it is easy to appropriatelyclassify target data even when the target data that can belong to a newclass that is not in an existing class is input.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram illustrating a configuration of aclassification system according to an exemplary embodiment of thepresent disclosure.

FIG. 2 is an explanatory diagram illustrating an example of target datainput to the classification system.

FIG. 3 is an explanatory diagram illustrating a configuration of aclassification part in the classification system.

FIG. 4 is an explanatory diagram illustrating an example of a firstdetermination operation in a determination part in the classificationsystem.

FIG. 5 is an explanatory diagram illustrating an example of a seconddetermination operation in the determination part in the classificationsystem.

FIG. 6 is an explanatory diagram illustrating another example of thesecond determination operation in the determination part in theclassification system.

FIG. 7 is an explanatory diagram of a feature amount space indicating acandidate of a new class in the classification system.

FIG. 8 is a flowchart illustrating an example of an operation of theclassification system.

DESCRIPTION OF EMBODIMENT (1) OUTLINE

Classification system 100 according to the present exemplary embodimentis a system for classifying target data into any of a plurality ofclasses. In the present exemplary embodiment, the target data is datarepresenting target image A1 (see FIG. 2). Target image A1 is an imageof determination object 2. Determination object 2 is, for example, acan. Target image A1 illustrated in FIG. 2 represents a bottom surfaceof the can in a normal state. Here, determination object 2 can take atleast one of a normal state and a plurality of types of abnormal states.As an example, the abnormal state may include a state in which there isa dot dent, a state in which there is a line scratch, a state in whichthere is a circle scratch on determination object 2, a state in whichdirt is attached, and a state in which a foreign matter (liquid or thelike) is attached to the determination object 2. That is, classificationsystem 100 classifies determination object 2 into any of the pluralityof classes (Here, the normal state and the plurality of types ofabnormal states). Therefore, classification system 100 can be used forinspecting determination object 2.

As illustrated in FIG. 1, classification system 100 includes inputreception part 11, classification part F1, calculation part F2,determination part F3, and presentation part (output part) 12.

Input reception part 11 receives an input of target data. In the presentexemplary embodiment, as an example, image data obtained by imagingdetermination object 2 with an imaging device is input to inputreception part 11 as target data.

Classification part F1 classifies the target data into any one of theplurality of classes. In the present exemplary embodiment,classification part F1 classifies the target data using a learned modelobtained by machine learning of an input and output relationship betweenthe target data and a classification result in advance. That is, theplurality of classes correspond to existing classes defined in advanceby machine learning.

Calculation part F2 calculates a feature amount of the target data. Inthe present exemplary embodiment, as an example, the feature amount iscalculated based on a difference between a feature vector of image dataas target data and a feature vector of image data as a reference.

Determination part F3 determines a possibility that the target data isclassified into a new class different from the plurality of classesbased on a classification result in classification part F1 and thefeature amount of the target data calculated by calculation part F2.That is, determination part F3 determines the possibility that thetarget data should be classified into the new class rather thanclassified into any of the plurality of existing classes.

When determination part F3 determines that there is a possibility thatthe target data is classified into the new class, presentation part 12presents a determination result of determination part F3. As an example,presentation part 12 presents the determination result to a user ofclassification system 100 by a display device such as a liquid crystaldisplay.

As described above, in the present exemplary embodiment, whendetermination part F3 determines that there is a possibility that thetarget data is classified into the new class, classification system 100presents to the user that the new class is necessary, instead ofautomatically relearning classification part F1 and classifying thetarget data into the new class. Therefore, in the present exemplaryembodiment, there is an advantage that even when target data that canbelong to a new class that is not in an existing class is input, thetarget data can be easily classified appropriately.

(2) DETAILS

Hereinafter, classification system 100 according to the presentexemplary embodiment will be described with reference to FIG. 1.Classification system 100 includes input reception part 11, output part12, storage part 13, and processing part 14.

Input reception part 11 receives an input of target data. That is, inputreception part 11 is an execution subject of input reception step S1 tobe described later. In the present exemplary embodiment, input receptionpart 11 is a communication interface that receives a signal transmittedfrom another device by wired communication or wireless communication,and receives an input of image data of determination object 2 capturedby the imaging device as target data. The target data (image data ofdetermination object 2) may be directly transmitted from the imagingdevice to input reception part 11, or may be indirectly transmitted viaan intermediate medium. The target data received by input reception part11 is provided to processing part 14.

Processing part 14 is configured to control the overall control ofclassification system 100, that is, control input reception part 11,output part 12, and storage part 13. Processing part 14 mainly includesa computer system including one or more processors and memories.Therefore, one or more processors function as processing part 14 byexecuting a program recorded in the memory. The program may be recordedin advance in the memory, may be provided through a telecommunicationline such as the Internet, or may be provided by being recorded in anon-transitory recording medium such as a memory card.

Processing part 14 includes classification part F1, calculation part F2,and determination part F3. In FIG. 1, classification part F1,calculation part F2, and determination part F3 do not indicatesubstantial configurations, but indicate functions implemented byprocessing part 14.

Classification part F1 is configured to classify the target data intoany one of the plurality of classes. That is, classification part F1 isan execution subject of classification step S3 described later. In thepresent exemplary embodiment, as illustrated in FIG. 3, classificationpart F1 includes a plurality of classifiers F11 to F1 n (“n” is aninteger of two or more), and NOR circuit F10.

Each of classifiers F11 to F1 n may include a classifier using a neuralnetwork or a classifier generated by deep learning using a multilayerneural network, in addition to a linear classifier such as a supportvector machine (SVM). In the present exemplary embodiment, each ofclassifiers F11 to F1 n is a classifier using a learned neural network.The learned neural network may include, for example, a convolutionalneural network (CNN), a bayesian neural network (BNN), or the like. Eachof classifiers F11 to F1 n can be realized by mounting a learned neuralnetwork on an integrated circuit such as an application specificintegrated circuit (ASIC) or a field-programmable gate array (FPGA).

In the present exemplary embodiment, the plurality of classes includes aplurality of corresponding classes (a first class, a second class, . . ., an n-th class) and another class. The plurality of correspondingclasses are classes respectively corresponding to the plurality ofclassifiers F11 to F1 n included in classification part F1. That is, inthe present exemplary embodiment, the target data is input to each ofthe plurality of classifiers F11 to F1 n. Then, each of the plurality ofclassifiers F11 to F1 n determines whether or not the input target datais classified into the corresponding class corresponding to itself. Forexample, whether or not the target data is classified into the n-thclass is classified by n-th classifier F1 n. That is, when the targetdata is input to n-th classifier F1 n, if an output of n-th classifierF1 n is “High”, it is determined that the target data is classified intothe n-th class, and if “Low”, it is determined that the target data isnot classified into the n-th class.

In the present exemplary embodiment, for example, each of classifiersF11 to F1 n outputs “High” when a certainty factor exceeds a threshold,and outputs “Low” when the certainty factor falls below the threshold.The “certainty factor” in the present disclosure refers to a probabilitythat target data belongs to a class classified by classification partF1. For example, if the certainty factor in first classifier F11 is “1”,classification part F1 determines that a probability that the targetdata belongs to the first class is 100%. Furthermore, for example, ifthe certainty factor in first classifier F11 is “0.8”, classificationpart F1 has determined that a probability that the target data belongsto the first class is 80% and a probability that the target data belongsto the other class is 20%.

Outputs of the plurality of classifiers F11 to F1 n are input to NORcircuit F10. Then, NOR circuit F10 outputs “High” when the outputs ofall classifiers F11 to F1 n are “Low”. Here, the other class is a classthat does not correspond to any of the plurality of classifiers F11 toF1 n. That is, the target data classified into the other class is datanot classified into any of the first class to the n-th class that arethe plurality of corresponding classes. In the present exemplaryembodiment, when NOR circuit F10 outputs “High”, that is, when theoutputs of all classifiers F11 to F1 n are “Low”, the target data isclassified into the other class.

As described above, in the present exemplary embodiment, classificationpart F1 classifies the target data received by input reception part 11into any of the plurality of classes by the plurality of classifiers F11to F1 n and NOR circuit F10. Note that classification part F1 basicallyclassifies the target data into any one of the plurality of classes, butmay classify the target data into two or more corresponding classesamong the plurality of corresponding classes.

Calculation part F2 is configured to calculate a feature amount of thetarget data. That is, calculation part F2 is an execution subject ofcalculation step S2 described later. For the calculation of the featureamount, reference data serving as a reference of the target data isused. The reference data is an image of determination object 2 similarlyto the target data. In the present exemplary embodiment, the referencedata is data indicating an image (reference image) of determinationobject 2 in a normal state. Here, target image A1 illustrated in FIG. 2represents an image of determination object 2 in a normal state, and canbe used as reference image A2. In the present exemplary embodiment, incalculating the feature amount, target image A1 is normalized such thatthe position and size of determination object 2 match the position andsize of determination object 2 in reference image A2.

As an example, calculation part F2 calculates the feature amount of thetarget data using a feature vector. For example, calculation part F2calculates a feature vector for each block having the same sizeincluding one or more pixels, which is commonly set in target image A1and reference image A2. The feature vector has a pixel value of a pixelincluded in the block as an element. Then, calculation part F2calculates a difference vector between the feature vector for each blockof target image A1 and the feature vector for each block of referenceimage A2 as the feature amount of the target data. The feature amountcalculated here is represented as a multi-dimensional vector based onthe number of blocks and the number of pixels for each block.

In the present exemplary embodiment, calculation part F2 furtherperforms appropriate conversion processing such as t-distributedstochastic neighbor embedding (t-SNE) on the feature amount of thetarget data calculated as described above. As a result, for example, asillustrated in FIG. 4, calculation part F2 calculates the feature amountof the target data as point D1 on two-dimensional feature amount spaceFS1. Of course, the feature amount of the target data may be representedas a point on a three-dimensional or multi-dimensional feature amountspace.

Determination part F3 is configured to determine a possibility that thetarget data is classified into a new class different from the pluralityof classes based on a classification result in classification part F1and the feature amount of the target data calculated by calculation partF2. That is, determination part F3 is an execution subject ofdetermination steps S4 to S8 described later.

In the present exemplary embodiment, determination part F3 distinguishesand determines whether the target data is classified into the otherclass or the new class. That is, in the present exemplary embodiment,when the target data is classified into the other class byclassification part F1, determination part F3 does not immediatelyclassify the target data into the new class, but sets the target data asa candidate for the new class, for example, when a predeterminedcondition is further satisfied. Then, when the predetermined conditionis not satisfied, determination part F3 classifies the target data intothe other class. Furthermore, in the present exemplary embodiment,determination part F3 also determines whether or not the target data isa candidate for the new class when the target data is classified intotwo or more corresponding classes by classification part F1.

As an example, in a case where the target data is classified into theother class by classification part F1, determination part F3 sets thetarget data as a candidate to be classified into the new class if thetarget data satisfies “condition A”. On the other hand, when the targetdata does not satisfy “condition A”, it is determined that the targetdata is classified into the other class.

“Condition A” means that the feature amount of the target data isseparated from any of the plurality of corresponding classes by greaterthan or equal to a predetermined distance in feature amount space FS1.An example in which “condition A” is satisfied will be described withreference to FIG. 4. In FIG. 4, “C1” to “C3” represent groups of featureamounts of the target data classified into the first class to the thirdclass in the past in feature amount space FS1, respectively. In FIG. 4,the feature amounts of the target data are represented by differentpatterns for “C1” to “C3”, respectively. In FIG. 4, “D1” represents thefeature amount of the target data classified by classification part F1in feature amount space FS1. Note that, although not illustrated in FIG.4, feature amount space FS1 also includes a group of feature amounts oftarget data classified in the past into classes other than the firstclass to the third class.

As illustrated in FIG. 4, “D1” is at a position separated from any of“C1” to “C3” by greater than or equal to a predetermined distance. Here,“being separated by greater than or equal to a predetermined distance”means that “D1” is located outside a circle centered on a center pointof each class in feature amount space FS1, for example. In addition,“being separated by greater than or equal to a predetermined distance”means that, as an example, in feature amount space FS1, a distancebetween a feature amount at a position closest to “D1” among featureamounts of target data of each class and “D1” is longer than apredetermined value.

Further, as an example, in a case where the target data is classifiedinto two or more corresponding classes among the plurality ofcorresponding classes by classification part F1, determination part F3sets the target data as a candidate to be classified into the new classif the target data satisfies “condition B”. On the other hand, when thetarget data does not satisfy “condition B”, it is determined that thetarget data is classified into the two or more corresponding classes.

“Condition B” includes a “first condition” and a “second condition”. Inthe present exemplary embodiment, determination part F3 determines that“condition B” is satisfied when both the “first condition” and the“second condition” are satisfied.

The “first condition” is that the feature amount of the target data isbetween two or more corresponding classes in feature amount space FS1.An example in which the “first condition” is satisfied will be describedwith reference to FIG. 5. In FIG. 5, “C1” and “C2” represent groups offeature amounts of the target data classified into the first class andthe second class in the past in feature amount space FS1, respectively.In FIG. 5, the feature amounts of the target data are represented bydifferent patterns for “C1” and “C2”, respectively. Note that thefeature amounts of the target data in a region surrounded by a brokenline in FIG. 5 belong to both “C1” and “C2”. In addition, in FIG. 5,“D1” represents the feature amount of the target data classified byclassification part F1 in feature amount space FS1. Note that, althoughnot illustrated in FIG. 5, feature amount space FS1 also includes agroup of feature amounts of target data classified in the past intoclasses other than the first class and the second class.

As illustrated in FIG. 5, “D1” is located between “C1” and “C2”. Here,“between two or more corresponding classes” means that, as an example,target data is included inside a circle centered on a center point of aregion (line segments in case of two classes, and polygons in case ofthree or more classes) defined by center points of two or morecorresponding classes. In the example illustrated in FIG. 5, “D1” isincluded inside a circle centered on a center point of line segment L1defined by the center points of “C1” and “C2”.

The “second condition” means that any of two or more classifiers F11 toF1 n corresponding to two or more corresponding classes focuses on thesame portion of the target data. In other words, when one of two or moreclassifiers F11 to F1 n corresponding to two or more correspondingclasses does not focus on the same portion of the target data,determination part F3 excludes the target data from the candidate. Anexample in which the “second condition” is satisfied will be describedwith reference to FIG. 6. FIG. 6 illustrates target image A1 afterappropriate visualization processing such as gradient-weighted classactivation mapping (Grad-CAM) is performed. In addition, FIG. 6illustrates first range A11 in which first classifier F11 among two ormore classifiers F11 to F1 n pays attention in the target data, andsecond range A12 in which second classifier F12 among two or moreclassifiers F11 to F1 n pays attention in the target data. In theexample illustrated in FIG. 6, first range A11 and second range A12overlap, and two or more classifiers F11, F12 focus on the same portionof the target data.

In the present exemplary embodiment, determination part F3 determinesthat the target data is classified into the new class when the number ofthe target data set as candidates for the new class as described aboveexceeds a predetermined number. That is, determination part F3 does notdetermine that the target data is classified into the new class at thestage where the target data is set as the candidate of the new class,and determines that the candidate group of the target data is classifiedinto the new class for the first time when the number of the candidatesexceeds a predetermined number (for example, dozens).

Storage part 13 includes one or more storage devices. Examples of thestorage device are a random access memory (RAM), an electricallyerasable programmable read only memory (EEPROM), or the like. Storagepart 13 stores the target data and a determination result ofdetermination part F3 for the target data. In the present exemplaryembodiment, storage part 13 does not store all the target data input toinput reception part 11, but stores the target data (that is, thecandidates for the new class) determined by determination part F3 to belikely to be classified into the new class, and the determination resultfor the target data.

In the present exemplary embodiment, the determination result ofdetermination part F3 is stored in storage part 13 in association withgroup G0 according to similarity of the feature amount of the targetdata. An example in which the feature amounts of the target data areclassified into a plurality of groups G1, G2, and G3 will be describedwith reference to FIG. 7. In FIG. 7, groups G1 to G3 each represents agroup of feature amounts of target data that is a candidate for the newclass in feature amount space FS1. In each of groups G1 to G3, thefeature amounts of a plurality of the target data are similar to eachother. In addition, groups G1 to G3 are at positions separated from eachother in feature amount space FS1, that is, are dissimilar to eachother. Further, groups G1 to G3 can be determined as the new class bydetermination part F3 when the number of the candidates of the targetdata exceeds a predetermined number.

Output part 12 is configured to output information processed byprocessing part 14. In the present exemplary embodiment, output part 12includes a port for outputting data, and an image display device fordisplaying the information. As an example, the image display device mayinclude a thin display device such as a liquid crystal display or anorganic electro-luminescence (EL) display.

In the present exemplary embodiment, output part 12 also serves aspresentation part 12. Presentation part 12 is configured to present thedetermination result of determination part F3 to a user ofclassification system 100 when determination part F3 determines thatthere is a possibility that the target data is classified into the newclass. That is, presentation part 12 is an execution subject ofpresentation step S9 described later. Here, presentation part 12presents the determination result to the user by displaying thedetermination result on the image display device. In the presentexemplary embodiment, since the determination result is stored instorage part 13, presentation part 12 presents the determination resultread from storage part 13 by processing part 14. For example,presentation part 12 displays target image A1, a message indicating thattarget image A1 can be classified into the new class, and the like onthe image display device as the determination result.

In the present exemplary embodiment, presentation part 12 presents thedetermination result in a mode according to the number of the targetdata belonging to group G0. As an example, in a case where “condition C”is not satisfied, presentation part 12 presents the determination resultof determination part F3. In this case, presentation part 12 may displaythe number of the candidates of the target data belonging to each of oneor more groups G0 on the image display device. Then, in a case where“condition C” is satisfied, presentation part 12 displays an image orthe like prompting the user to relearn classification part F1 on theimage display device together with the determination result ofdetermination part F3. “Condition C” means that, in any one of one ormore groups G0, the number of the target data set as candidates for thenew class by determination part F3 exceeds a predetermined number.

Furthermore, in the present exemplary embodiment, presentation part 12displays certainty factors in the plurality of classes of the targetdata, and feature amount space FS1. As an example, in a case where thetarget data is classified into the other class by classification partF1, and “condition A” is satisfied, presentation part 12 displaysfeature amount space FS1 as illustrated in FIG. 4 and a list of thecertainty factors of each class on the image display device.Furthermore, as an example, in a case where the target data isclassified into two or more corresponding classes among the plurality ofcorresponding classes by classification part F1, and “condition B” issatisfied, presentation part 12 displays feature amount space FS1 asillustrated in FIG. 5, and a list of the certainty factors of each classon the image display device.

(3) OPERATION

Hereinafter, an example of an operation of the classification system ofthe present exemplary embodiment will be described with reference toFIG. 8. First, when input reception part 11 receives an input of targetdata (S1), calculation part F2 calculates a feature amount of the targetdata received by input reception part 11 (S2). Then, classification partF1 classifies the target data received by input reception part 11 usinga learned model (S3). Note that the order of the calculation processingof the feature amount of the target data by calculation part F2 and theclassification processing of the target data by classification part F1may be reversed.

Next, determination part F3 determines a possibility that the targetdata is classified into the new class based on the classification resultin classification part F1 and the feature amount of the target datacalculated by calculation part F2. When the target data is classifiedinto another class by classification part F1 (S4: Yes) and the targetdata satisfies “condition A” (S5: Yes), determination part F3 sets thetarget data as a candidate for the new class (S6). On the other hand,when classification part F1 does not classify the target data into theother class (S4: No), the target data is classified into two or morecorresponding classes among the plurality of corresponding classes (S7:Yes), and “condition B” is satisfied (S8: Yes), determination part F3sets the target data as a candidate for the new class (S6).

Then, when determination part F3 determines that the target data is acandidate for the new class, that is, there is a possibility that thetarget data is classified into the new class, presentation part 12presents the determination result of determination part F3 (S9). Here,when “condition C” is satisfied (S10: Yes), presentation part 12notifies that classification part F1 is to be relearned by displaying animage or the like prompting the user to relearn classification part F1on the image display device together with the determination result ofdetermination part F3 (S11).

The user who has received the notification that relearning is to beperformed performs a predetermined operation for permitting execution ofrelearning, for example, using an interface for accepting an operationon processing part 14. Then, processing part 14 executes relearning ofthe learned model of classification part F1 using a group of target datadetermined to be classified into the new class as teacher data. Asdescribed above, in the present exemplary embodiment, classificationpart F1 relearns the target data determined to be classified into thenew class by determination part F3 as teacher data. In the presentexemplary embodiment, the relearning of classification part F1corresponds to adding a new class. In addition, “adding a new class”corresponds to adding a new classifier that determines whether the inputtarget data is classified into the new class in classification part F1.

(4) ADVANTAGES

As described above, in the present exemplary embodiment, whendetermination part F3 determines that there is a possibility that thetarget data is classified into the new class, classification system 100presents to the user that the new class is necessary, instead ofautomatically relearning classification part F1 and classifying thetarget data into the new class. Therefore, in the present exemplaryembodiment, there is an advantage that even when target data that canbelong to a new class that is not in an existing class is input, thetarget data can be easily classified appropriately.

Here, in a case where the learning of each of classifiers F11 to F1 n ofclassification part F1 is insufficient, there is a possibility thatdetermination part F3 may erroneously determine that there is apossibility that the target data is classified into the new class evenin a case where the target data is correctly classified into any classof the plurality of classes. Therefore, in the present exemplaryembodiment, since presentation part 12 presents the determination resultof determination part F3, there is an advantage that it is possible toleave the determination as to whether or not the target data isclassified into the new class to the user, and it is possible to improvethe certainty that the target data is classified into the new class.

(5) MODIFIED EXAMPLES

The above-described exemplary embodiment is merely one of variousexemplary embodiments of the present disclosure. The above-describedexemplary embodiment can be variously changed according to a design andthe like as long as the object of the present disclosure can beachieved. In addition, functions similar to those of classificationsystem 100 according to the above-described exemplary embodiment may beembodied by a classification method, a computer program, anon-transitory recording medium recording a computer program, or thelike.

A classification method according to one aspect includes input receptionstep S1, classification step S3, calculation step S2, determinationsteps S4 to S8, and presentation step S9. Input reception step Si is astep of receiving an input of target data. Classification step S3 is astep of classifying the target data into any one of a plurality ofclasses. Calculation step S2 is a step of calculating a feature amountof the target data. Determination steps S4 to S8 are steps ofdetermining whether it is possible that the target data is classifiedinto a new class different from the plurality of classes based on aclassification result in classification step S3 and the feature amountof the target data calculated in calculation step S2. Presentation stepS9 is a step of presenting a determination result of determination stepsS4 to S8 when it is determined in determination steps S4 to S8 thatthere is a possibility that the target data is classified into the newclass. A (computer) program according to an aspect causes one or moreprocessors to execute the above classification method.

Modified examples of the exemplary embodiment described above will behereinafter listed. The modified examples described below can be appliedin appropriate combination.

Classification system 100 according to the present disclosure includes,for example, a computer system in processing part 14 and the like. Thecomputer system mainly includes a processor and a memory as hardware. Aprocessor executes a program recorded in a memory of the computer systemto implement a function as classification system 100 in the presentdisclosure. The program may be recorded in advance in the memory of thecomputer system, may be provided through a telecommunication line, ormay be provided by being recorded in a non-transitory recording mediumreadable by the computer system such as a memory card, an optical disk,or a hard disk drive. The processor of the computer system includes oneor a plurality of electronic circuits including a semiconductorintegrated circuit (IC) or a large-scale integrated circuit (LSI). Theintegrated circuit such as an IC or an LSI in this disclosure is calleddifferently depending on a degree of integration, and includes anintegrated circuit called a system LSI, a very large scale integration(VLSI), or an ultra large scale integration (ULSI). Further, thefollowing device can be employed as the processor: a field-programmablegate array (FPGA) that is programmed after being manufactured as an LSI,or a logic device in which it is possible to reconfigure a bondingrelationship inside an LSI or a circuit section inside the LSI. Theplurality of electronic circuits may be integrated into one chip or maybe provided in a distributed manner on a plurality of chips. Theplurality of chips may be integrated in one device or may be provided ina distributed manner in a plurality of devices. The computer system inthis disclosure includes a microcontroller having one or more processorsand one or more memories. Therefore, the microcontroller is alsoconstituted by one or a plurality of electronic circuits including asemiconductor integrated circuit or a large-scale integrated circuit.

In addition, it is not an essential configuration for classificationsystem 100 that a plurality of functions in classification system 100are aggregated in one housing, and the components of classificationsystem 100 may be provided in a distributed manner in a plurality ofhousings. Furthermore, at least a part of the functions ofclassification system 100 may be realized by a cloud (cloud computing)or the like.

In the above-described exemplary embodiment, presentation part 12 maypresent the determination result to the user only when it is determinedthat the target data is classified into the new class, instead ofpresenting the determination result to the user every time thedetermination result is obtained by determination part F3. That is,presentation part 12 may not present the determination result to theuser only when determination part F3 determines that the target data isa candidate to be classified into the new class.

In the above-described exemplary embodiment, in a case whereclassification part F1 relearns the target data determined to beclassified into the new class as teacher data, a correct answer labelattached to the target data may be determined by the user or may beautomatically determined by processing part 14.

In the above-described exemplary embodiment, the user may causeclassification part F1 to relearn after excluding target data considerednot to correspond to the new class from a group of target data presentedby presentation part 12.

In the above-described exemplary embodiment, the target data is notlimited to the image data of determination object 2, and may be sounddata emitted by determination object 2. In this case, the “secondcondition” in determination part F3 means that any of two or moreclassifiers F11 to F1 n corresponding to two or more correspondingclasses focuses on the same portion (time-series change) of the targetdata.

In the above-described exemplary embodiment, when determination part F3determines whether or not there is a possibility that the target data isclassified into the new class, the “second condition” of the “firstcondition” and the “second condition” of “condition B” may not beadopted. That is, determination part F3 may set the target data as acandidate to be classified into the new class only by satisfying acondition that the target data is classified into two or morecorresponding classes and the feature amount of the target data isbetween two or more corresponding classes in feature amount space FS1.

In the above-described exemplary embodiment, presentation part 12 mayoutput the determination result of determination part F3 by voice using,for example, a speaker or the like. In this case, presentation part 12may display the determination result of determination part F3 on theimage display device together with the output of the voice.

CONCLUSION

As described above, classification system (100) according to a firstaspect includes input reception part (11), classification part (F1),calculation part (F2), and determination part (F3). Input reception part(11) receives an input of target data. Classification part (F1)classifies the target data into any one of a plurality of classes.Calculation part (F2) calculates a feature amount of the target data.Determination part (F3) determines a possibility that the target data isclassified into a new class different from the plurality of classesbased on a classification result in classification part (F1) and thefeature amount of the target data calculated by calculation part (F2).

According to this aspect, there is an advantage that even when targetdata that can belong to a new class that is not in an existing class isinput, the target data can be easily classified appropriately.

Classification system (100) according to a second aspect furtherincludes presentation part (12) in the first aspect. When determinationpart (F3) determines that there is a possibility that the target data isclassified into the new class, presentation part (12) presents adetermination result of determination part (F3).

In classification system (100) according to a third aspect, in the firstor second aspect, the plurality of classes include a plurality ofcorresponding classes respectively corresponding to a plurality ofclassifiers (F11 to F1 n) included in classification part (F1), andanother class not corresponding to any of the plurality of classifiers(F11 to F1 n). Determination part (F3) distinguishes and determineswhether the target data is classified into the other class or the newclass.

According to this aspect, there is an advantage that it is difficult toerroneously determine that there is a possibility that the target datais classified into the new class in a case where the learning ofclassification part (F1) is not sufficient.

In classification system (100) according to a fourth aspect, in thethird aspect, determination part (F3) sets the target data as acandidate to be classified into the new class when the followingconditions are satisfied. The above conditions are that the target datais classified into the other class, a certainty factor is lower than athreshold in any of the plurality of corresponding classes, and thefeature amount of the target data is separated from any of the pluralityof corresponding classes by greater than or equal to a predetermineddistance in feature amount space (FS1).

According to this aspect, there is an advantage that it is difficult toerroneously determine that there is a possibility that the target datais classified into the new class in a case where the learning ofclassification part (F1) is not sufficient.

In classification system (100) according to a fifth aspect, in the thirdaspect, determination part (F3) sets target data as a candidate to beclassified into the new class when the following conditions aresatisfied. The above conditions are that the target data is classifiedinto two or more corresponding classes of the plurality of correspondingclasses, and the feature amount of the target data is between the two ormore corresponding classes in feature amount space (FS1).

According to this aspect, there is an advantage that it is difficult toerroneously determine that the target data is not classified into thenew class in a case where the learning of classification part (F1) isnot sufficient.

In classification system (100) according to a sixth aspect, in the fifthaspect, determination part (F3) excludes the target data from thecandidate when the following condition is satisfied. The above conditionis that any of two or more classifiers (F11 to F1 n) corresponding tothe two or more corresponding classes does not focus on the same portionof the target data.

According to this aspect, there is an advantage that determinationaccuracy of whether there is a possibility that the target data isclassified into the new class is easily improved.

In classification system (100) according to a seventh aspect, in any oneof the fourth to sixth aspects, determination part (F3) determines thatthe target data is classified into the new class when the number ofcandidate target data exceeds a predetermined number.

According to this aspect, there is an advantage that determinationaccuracy of whether or not the target data is classified into the newclass is easily improved.

Classification system (100) according to an eighth aspect furtherincludes storage part (13) in the second aspect. Storage part (13)stores the target data and the determination result of determinationpart (F3) for the target data.

According to this aspect, there is an advantage that presentation part(12) can present the past determination result stored in storage part(13).

In classification system (100) according to a ninth aspect, in theeighth aspect, the determination result is stored in storage part (13)in association with group (G0) according to similarity of the featureamount of target data.

According to this aspect, there is an advantage that the target data canbe easily classified into an appropriate new class as compared with acase where the target data is stored in association with one group (G0).

In classification system (100) according to a tenth aspect, in the ninthaspect, presentation part (12) presents the determination result in amode according to the number of the data belonging to group (G0).

According to this aspect, there is an advantage that the user can easilygrasp a degree of possibility that the target data is classified intothe new class by confirming the information presented by presentationpart (12).

In classification system (100) according to an eleventh aspect, in anyone of the first to tenth aspects, classification part (F1) relearns thetarget data determined to be classified into the new class bydetermination part (F3) as teacher data.

According to this aspect, there is an advantage that a new class can beadded to classification part (F1), and improvement in classificationaccuracy of the target data by classification part (F1) can be expected.

In classification system (100) according to a twelfth aspect, in any oneof the second and eighth to tenth aspects, presentation part (12)displays certainty factors of the target data in the plurality ofclasses, and feature amount space (FS1).

According to this aspect, there is an advantage that the user can easilygrasp the determination result of determination part (F3) by viewing animage displayed by presentation part (12).

A classification method according to a thirteenth aspect includes inputreception step (S1), classification step (S3), calculation step (S2),and determination steps (S4 to S8). Input reception step (S1) is a stepof receiving an input of target data. Classification step (S3) is a stepof classifying the target data into any one of a plurality of classes.Calculation step (S2) is a step of calculating the feature amount of thetarget data. Determination steps (S4 to S8) are steps of determiningwhether it is possible that the target data is classified into a newclass different from the plurality of classes based on a classificationresult in classification step (S3) and the feature amount of the targetdata calculated in calculation step (S2).

According to this aspect, there is an advantage that even when targetdata that can belong to a new class that is not in an existing class isinput, the target data can be easily classified appropriately.

In a classification method according to a fourteenth aspect, in thethirteenth aspect, presentation step (S9) is a step of presenting adetermination result of determination steps (S4 to S8) when it isdetermined in determination steps (S4 to S8) that there is a possibilitythat the target data is classified into the new class.

A program according to a fifteenth aspect causes one or more processorsto execute the classification method according to the thirteenth orfourteenth aspect.

According to this aspect, there is an advantage that even when targetdata that can belong to a new class that is not in an existing class isinput, the target data can be easily classified appropriately.

The configurations according to the second to twelfth aspects are notessential to classification system (100), and can be omitted asappropriate.

INDUSTRIAL APPLICABILITY

The classification system, the classification method, and the program ofthe present disclosure have an advantage that it is easy toappropriately classify target data even when the target data that canbelong to a new class that is not in an existing class is input.Therefore, the classification system, the classification method, and theprogram of the present disclosure can be used for inspecting an objectand the like, and are industrially useful.

REFERENCE MARKS IN THE DRAWINGS

11: input reception part

12: output part (presentation part)

13: storage part

100: classification system

F1: classification part

F11 to F1 n: classifier

F2: calculation part

F3: determination part

FS1: feature amount space

G0, G1, G2, G3: group

S1: input reception step

S2: calculation step

S3: classification step

S4 to S8: determination step

S9: presentation step

1. A classification system comprising: an input reception part thatreceives an input of target data; a classification part that classifiesthe target data into a class that includes any one of a plurality ofclasses; a calculation part that calculates a feature amount of thetarget data; and a determination part that determines whether it ispossible that the target data is classified into a new class differentfrom the plurality of classes based on a classification result in theclassification part and the feature amount of the target data calculatedby the calculation part.
 2. The classification system according to claim1, further comprising a presentation part that presents a determinationresult of the determination part when the determination part determinesthat whether it is possible that the target data is classified into thenew class.
 3. The classification system according to claim 1, whereinthe plurality of classes includes a plurality of corresponding classeseach corresponding to a respective one of a plurality of classifiersincluded in the classification part, and another class not correspondingto any of the plurality of classifiers, and the determination partdistinguishes and determines whether the target data is classified intothe other class or the new class.
 4. The classification system accordingto claim 3, wherein when the target data is classified into the otherclass, a certainty factor is lower than a threshold in any of theplurality of corresponding classes, and the feature amount of the targetdata is separated from any of the plurality of corresponding classes bygreater than or equal to a predetermined distance in a feature amountspace, the determination part sets the target data as a candidate to beclassified into the new class.
 5. The classification system according toclaim 3, wherein when the target data is classified into two or morecorresponding classes of the plurality of corresponding classes, and thefeature amount of the target data is between the two or morecorresponding classes in a feature amount space, the determination partsets the target data as a candidate to be classified into the new class.6. The classification system according to claim 5, wherein when any oftwo or more classifiers corresponding to the two or more correspondingclasses does not focus on the same portion of the target data, thedetermination part excludes the target data from the candidate.
 7. Theclassification system according to claim 4, wherein the determinationpart determines that the target data is classified into the new classwhen the number of the target data set as the candidate exceeds apredetermined number.
 8. The classification system according to claim 2,further comprising a storage part that stores the target data and thedetermination result of the determination part for the target data. 9.The classification system according to claim 8, wherein thedetermination result is stored in the storage part in association with agroup according to similarity of the feature amount of the target data.10. The classification system according to claim 9, wherein thepresentation part presents the determination result in a mode accordingto the number of the target data belonging to the group.
 11. Theclassification system according to claim 1, wherein the classificationpart relearns the target data determined to be classified into the newclass by the determination part as teacher data.
 12. The classificationsystem according to claim 2, wherein the presentation part displayscertainty factors of the target data in the plurality of classes, and afeature amount space.
 13. A classification method comprising: an inputreception step of receiving an input of target data; a classificationstep of classifying the target data into any one of a plurality ofclasses; a calculation step of calculating a feature amount of thetarget data; and a determination step of determining whether it ispossible that the target data is classified into a new class differentfrom the plurality of classes based on a classification result in theclassification step and the feature amount of the target data calculatedin the calculation step.
 14. The classification method according toclaim 13, further comprising a presentation step of presenting adetermination result of the determination step when it is determined inthe determination step that there is a possibility that the target datais classified into the new class.
 15. (canceled)
 16. The classificationsystem according to claim 3, wherein the classification part includesthe plurality of classifiers and a NOR circuit.